package com.castle.fortress.admin.rule.rule.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Date;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
 * 规则表 实体类
 *
 * @author 
 * @since 2025-04-21
 */
@Data
@ApiModel(value = "rule对象", description = "规则表")
public class RuleDto implements Serializable {
	private static final long serialVersionUID = 1L;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "规则ID/主键")
	@JsonProperty("id")
	private Long id;
	@ApiModelProperty(value = "规则名称")
	@JsonProperty("ruleName")
	private String ruleName;
	@ApiModelProperty(value = "规则描述")
	@JsonProperty("ruleDesc")
	private String ruleDesc;
	@ApiModelProperty(value = "规则类型")
	@JsonProperty("ruleType")
	private String ruleType;
	@ApiModelProperty(value = "规则来源")
	@JsonProperty("ruleSource")
	private String ruleSource;
	@ApiModelProperty(value = "风险级别")
	@JsonProperty("riskLevel")
	private String riskLevel;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "更新时间")
	@JsonProperty("updateTime")
	private Date updateTime;
	@ApiModelProperty(value = "消息内容")
	@JsonProperty("message")
	private String message;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "关联的场景ID")
	@JsonProperty("scenarioId")
	private Long scenarioId;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "创建人")
	@JsonProperty("createUser")
	private Long createUser;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "创建时间")
	@JsonProperty("createTime")
	private Date createTime;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "修改人")
	@JsonProperty("updateUser")
	private Long updateUser;
	@ApiModelProperty(value = "删除状态 YesNoEnum。 yes删除；no未删除")
	@JsonProperty("isDeleted")
	private Integer isDeleted;
	@JsonProperty("scenarioIdName")
	private String scenarioIdName;

}
